package edzest.basic;

public class J07_For {

	public static void main(String[] args) {
		// 반복문 - for문
		// 상황1) 간단한 인사말 5번 출력
		for( int i = 1; i <= 5; ++i ){
			System.out.println("선생님! 사랑해요");
		}
		
		// 상황2) 1 - 10까지 출력
		for( int j = 1; j <= 10; ++j ){
			System.out.print(j + " ");
		}
		System.out.println();
		
		// 상황3) 1 - 50 사이 홀수 출력
		for(int k = 1; k < 50; k = k + 2){
			System.out.print( k + " ");
		}
		System.out.println();
		
		// 상황4) 1 - 100 까지의 총합 출력
		int sum = 0;
		for(int m = 1; m <= 100; ++m){
			sum = sum + m;
		}
		System.out.println(sum);
		
		// 변수의 유효범위 scope
		// for문의 초기화식에 선언한 변수는
		// for문 안에서만 사용가능한 지역변수로 인식
		// for문 밖을 벗어나면 그 변수는 사라짐
		for(int n = 1; n <= 10; ++n){
			
		}
		for(int n = 10; n >= 1; --n){
			
		}
		int n = 1;
		for( ; n <= 10; ++n){
			
		}
		n = 10;
		for( ; n >= 1; --n){
			
		}
		
		// 상황5) 100 - 1까지 출력
		n = 100;
		for( ; n >= 1; --n){
			System.out.print(n+" ");
		}
		System.out.println();
		
		// 상황6) 100 - 1사이 짝수 출력
		n = 100;
		for( ; n >= 1; n = n - 2){
			System.out.print(n+" ");
		}
		System.out.println();
		
		// 상황7) 구구단 중 7단 출력
		n = 1;
		for( ; n <= 9; ++n){
			System.out.println(
					"7 x " + n + " = " + 7*n);
		}
		
		// 상황8) 십구단 중 18단 출력
		n = 1;
		for( ; n <= 19; n++){
			System.out.println(
					"18 x " + n + " = " + 18*n);
		}
	}

}
